
#include "allocator.hpp"

namespace zen {

	namespace gl {


		ZGLALLOCATORMETHOD allocate = malloc;
		ZGLDEALLOCATORMETHOD deallocate = free;

		void* zglAllocate(size_t size) {
			return allocate(size);
		}

		void zglDeallocate(void* ptr) {
			deallocate(ptr);
		}

		void zglSetAllocator(ZGLALLOCATORMETHOD allocator, ZGLDEALLOCATORMETHOD deallocator) {
			zen::gl::allocate = allocator == nullptr ? malloc : allocator;
			zen::gl::deallocate = deallocator == nullptr ? free : deallocator;
		}


	} // namespace gl

} // namespace zen